The conventional approach to using global positioning system (GPS) satellites to determine a receiver's position requires the receiver to download navigation messages from four or more visible satellites, extract the broadcast ephemerides for each satellite from the navigation messages, and utilize this ephemeris data to compute the position of the satellites in the ECEF (earth-centered earth-fixed) coordinate system at a specific time. The broadcast ephemerides for each satellite are provided in a frame of data that takes about 30 seconds to send/receive. The broadcast ephemerides are valid for a period of four hours starting from the time the satellite starts to broadcast the navigation data. A control station uploads the data to the satellite less frequently, usually a couple of times a day. After a four-hour period, the receiver has to again download the latest broadcast ephemerides.
Under “warm” or “cold” start conditions, the GPS receiver may not have valid ephemerides, and so it may have to wait until at least four satellites have been acquired and their broadcast ephemerides extracted before estimating a position. This extends the time needed to acquire valid ephemerides to beyond 30 seconds, perhaps to several minutes, which may not be acceptable to a user.
Furthermore, under weak signal conditions, the signal-to-noise ratio of the signal from one or more satellites may fall below the receiver's threshold to decode the navigation message without substantial errors.
To overcome these types of issues, the GPS receiver can obtain ephemerides from, for example, a cellular network if the receiver has the capability to communicate with a wireless network via assisted GPS (A-GPS). Alternately, the ephemerides can be in the form of a file that is stored in memory at the receiver. This file may include ephemeris data for one or more satellites that is valid for several days. The file can be transmitted to the GPS receiver using a wireless medium, or a user can periodically connect the GPS receiver to the Internet and download the latest file from a known location. With assistance from the wireless network or from a stored file, the TTFF (time to first fix) can be reduced to a few seconds (on the order of 5-15 seconds).
However, the size of the file can be problematic. If the file is large, it can take a long time to transfer the file to a GPS receiver. There are usually costs associated with the file transfer. For example, the file may have to be transferred to the GPS device over a wireless link, or a user may have to connect the device to a computer that is linked to the server where the file exists in order to transfer download the file. The cost of transferring the file is usually proportional to the transmit time or the size of the file being transmitted. Also, the user may be inconvenienced by the amount of time it takes to download the file. Furthermore, if the GPS receiver is a mobile device or the like with limited memory capacity, then a large file may consume an inordinate share of device memory.